const generateStory = (protagonist, partner, event) => {
  wx.showLoading({
    title: 'AI正在努力创作中...', 
    mask: true
  });

  return new Promise((resolve, reject) => {
    if (!protagonist || !event) {
      wx.hideLoading();
      reject('主角和事件是必须的哦！');
      return;
    }

    setTimeout(() => {
      wx.hideLoading();
      // 模拟随机失败
      if (Math.random() < 0.1) { // 10%的概率失败
        reject('AI今天有点累了，故事没想出来呢，请再试一次吧！');
        return;
      }

      const story = `在一个阳光明媚的下午，我们勇敢的主角'${protagonist}'正在森林里散步。突然，它遇到了以聪明著称的'${partner || '一位神秘的新朋友'}'。他们一见如故，决定一起去完成一个激动人心的任务：'${event}'。\n\n他们穿过了潺潺的溪流，越过了长满青苔的石桥。一路上，'${protagonist}'展现了无与伦比的勇气，而'${partner}'则用它的智慧解决了一个又一个难题。最终，他们成功地完成了冒险，夕阳把他们的影子拉得好长好长。他们约定，明天还要一起去探索更多未知的地方。`;
      resolve(story);
    }, 2500); // 模拟2.5秒的AI思考和网络延迟
  });
};

module.exports = {
  generateStory
};